﻿using System.Linq.Expressions;

namespace ThreeTeams.Infrastructure
{
    public interface IBaseRepository<T> where T : class
    {
        Task<int> Create(T entity);
        Task<int> Update(T entity);
        IQueryable<T> GetAll();
        Task<int> Deleted(T entity);
        Task<int> CreateRange(IEnumerable<T> entities);
        Task<int> DeletedRange(IEnumerable<T> entities);
        Task<int> DeletedRange(Expression<Func<T, bool>> expression);
    }
}
